 package cn.edu.shengda;


public class Test {

    public static void main(String[] args) {
        ShapeArea rectangle = new Rectangle(1, 2);
        ShapeArea circle = new Circle(2);
        System.out.println(rectangle.toString());
        System.out.println(circle.toString());
    }
}

interface ShapeArea {

    public double getArea();

    public double getPerimeter();
}

class Rectangle implements ShapeArea {

    private double height;
    private double width;

    public Rectangle(double w, double h) {
        this.width = w;
        this.height = h;
    }

    public double getArea() {
        return height * width;
    }

    public double getPerimeter() {
        return 2 * (height + width);
    }

    public String toString() {
        return "width=" + width + ",height=" + height + ",perimeter=" + getPerimeter() + ",area" + getArea();
    }
}

class Circle implements ShapeArea {

    private double r;

    public Circle(double r) {
        this.r = r;
    }

    public double getArea() {
        return Math.PI * r * r;
    }

    public double getPerimeter() {
        return 2 * Math.PI * r;
    }

    public String toString() {
        return "r =" + r + ", area = " + getArea() + ", perimeter = " + getPerimeter();
    }
}

